package cn.edu.wynu.d1_math;
/*
Math ：代表数学，是一个工具类，里面提供的都是对数据进行操作的一些静态方法。
Math类提供的常见方法
            方法名                                 说明
public static int abs(int a)                获取参数绝对值
public static double ceil(double a)         向上取整
public static double floor(double a)        向下取整
public static int round(float a)            四舍五入
public static int max(int a,int b)          获取两个int值中的较大值
public static double pow(double a,double b) 返回a的b次幂的值
public static double random()               返回值为double的随机值，范围[0.0,1.0)
*/

public class MathTest {
    public static void main(String[] args) {
        // 了解Math类提供的常用方法
        // 1、public static int abs(int a):取绝对值(拿到的结果一定是正数)
        // public static double abs(double a)
        System.out.println(Math.abs(-10)); // 10
        System.out.println(Math.abs(-10.5)); // 10.5
        System.out.println("----------------------------");

        // 2、public static double ceil(double a): 向上取整
        System.out.println(Math.ceil(10.5)); // 11.0
        System.out.println(Math.ceil(10.0001)); // 11.0
        System.out.println(Math.ceil(10.0)); // 10.0
        System.out.println("----------------------------");

        // 3、public static double floor(double a): 向下取整
        System.out.println(Math.floor(10.5)); // 10.0
        System.out.println(Math.floor(10.999)); // 10.0
        System.out.println(Math.floor(10.0)); // 10.0
        System.out.println("----------------------------");

        // 4、public static long round(double a):四舍五入
        System.out.println(Math.round(10.5)); // 11
        System.out.println(Math.round(10.4)); // 10
        System.out.println(Math.round(10.9999)); // 11
        System.out.println("----------------------------");

        // 5、public static int max(int a,int b):取较大值
        System.out.println(Math.max(10,20)); // 20
        System.out.println(Math.max(10,20.5)); // 20.5
        System.out.println("----------------------------");

        // public static int min(int a,int b):取较小值
        System.out.println(Math.min(10,20)); // 10
        System.out.println(Math.min(10,9.5)); // 10
        System.out.println("----------------------------");

        // 6、public static double pow(double a, double b):取次方
        System.out.println(Math.pow(2,3)); // 8.0
        System.out.println(Math.pow(2,-3)); // 0.125
        System.out.println(Math.pow(2,0)); // 1
        System.out.println(Math.pow(2,1)); // 2
        System.out.println(Math.pow(3,5)); // 243.0
        System.out.println("----------------------------");

        // 7、public static double random(): 取随机数[0.0，1.0)(包前不包后)
        for (int i = 0; i < 10; i++) {
            System.out.println(Math.random());
        }
    }
}
